#include <opencv2/opencv.hpp>
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <iostream>
#include <complex>

using namespace cv;
using namespace std;

#ifndef HGUARD_type
#define HGUARD_type
// change the floats below to double to make everything use double-precision arithmetic.
typedef complex<float> cptype;
typedef float rltype;

// The matrix types used
typedef Mat_<cptype> Matcp;
typedef Mat_<rltype> Matrl;

// defined in common.cpp. They also need to be changed if doing a float<->double switch
extern int CV_CP;
extern int CV_RL;

#endif